// #include <Stepper.h>
// #include <IRremote.h>
// const int STEPS = 32;  //设置步进电机内部输出轴旋转一周:步数为32，减速比为1：64
// int Steps2Take;        //2048步 = 1圈， 电机输出轴旋转一周为2048步
// int receiver = 12;     //红外接收器信号针脚到Arduino数字针脚12
// // 设置电机驱动引脚的正确顺序
// //IN1, IN2, IN3, IN4的顺序为1-3-2-4步进器
// Stepper myStepper(STEPS, 8, 10, 9, 11)； IRrecv irrecv(receiver);  //创建"irrecv" 的实例
// decode_results results;                                            //创建'decode_results'的实例
// void setup() {
//   Serial.begin(9600);
//   irrecv.enableIRIn();  //启动接收器
// }

// void loop() {
//   if (irrecv.decode(&results)) {  //判断是否收到红外信号
//     Serial.println(results.value, HEX);
//     if (results.value == 0xFFA857) {  //按下了VOL+按钮
//       myStepper.setSpeed(150);        //设置速度为15步/分钟
//       Steps2Take = 2048;              //顺时针
//       myStepper.step(Steps2Take);
//       delay(2000);
//     }
//     if (results.value == 0xFF629D) {  //按下了VOL-按钮
//       myStepper.setSpeed(150);        //设置电机转速
//       Steps2Take = -2048;             //逆时针旋转
//       myStepper.step(Steps2Take);
//       delay(2000);
//     }
//     irrecv.resume();  // 接收下一个值
//     digitalWrite(8, LOW);
//     digitalWrite(9, LOW);
//     digitalWrite(10, LOW);
//     digitalWrite(11, LOW);
//   }
// }



#include <Stepper.h>
const int STEPS = 32;  //设置步进电机内部输出轴旋转一周:步数为32，减速比为1：64
// 设置电机驱动引脚的正确顺序
//IN1, IN2, IN3, IN4的顺序为1-3-2-4步进器
Stepper myStepper(STEPS, 8, 10, 9, 11);
void setup() {
  // Serial.begin(9600);

  myStepper.setSpeed(360);
}

void loop() {
  myStepper.step(2048);

  // if (irrecv.decode(&results)) {  //判断是否收到红外信号
  //   Serial.println(results.value, HEX);
  //   if (results.value == 0xFFA857) {  //按下了VOL+按钮
  //     myStepper.setSpeed(150);        //设置速度为15步/分钟
  //     Steps2Take = 2048;              //顺时针
  //     myStepper.step(Steps2Take);
  //     delay(2000);
  //   }
  //   if (results.value == 0xFF629D) {  //按下了VOL-按钮
  //     myStepper.setSpeed(150);        //设置电机转速
  //     Steps2Take = -2048;             //逆时针旋转
  //     myStepper.step(Steps2Take);
  //     delay(2000);
  //   }
  //   irrecv.resume();  // 接收下一个值
  //   digitalWrite(8, LOW);
  //   digitalWrite(9, LOW);
  //   digitalWrite(10, LOW);
  //   digitalWrite(11, LOW);
  // }
}